package com.ruoyi.school.service;

import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.school.domain.PacClass;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.school.domain.PacClass;
import com.ruoyi.school.domain.vo.PacClassInfoVo;

import java.util.List;

/**
* @author jeremylin
* @description 针对表【pac_class(班级表)】的数据库操作Service
* @createDate 2025-05-25 16:40:43
*/
public interface PacClassService extends IService<PacClass> {

    /**
     * 查询老师绑定的班级信息
     * @param user
     * @return
     */
    List<PacClass> selectByTeacher(SysUser user);

    /**
     * 绑定班级
     * @param pacClass
     */
    void bindClass(PacClass pacClass);

    /**
     * 模糊查询未绑定的班级信息
     * @param pacClass
     * @return
     */
    List<PacClass> getNoBindAllByName(PacClass pacClass);

    /**
     * 查询班级详细信息
     * @param classIds
     * @return
     */
    List<PacClassInfoVo> selectClassTeacherByIds(List<Long> classIds);

    /**
     * 根据班级名称查找
     * @param stuClass
     * @return
     */
    PacClass getInfoByClassName(String stuClass);

    List<PacClass> getList(PacClass pacClass);

    PacClass getDetails(PacClass pacClass);

    boolean add(PacClass pacClass);

    boolean edit(PacClass pacClass);

    boolean delete(PacClass pacClass);

    List<PacClass> getAllList(PacClass pacClass);
}
